package com.carter.springframework.beans.factory.config;

import com.carter.springframework.beans.factory.DisposableBean;

/**
 * 单例bean注册接口
 */
public interface SingletonBeanRegistry {
    /**
     * 获取单例bean
     * @param beanName
     * @return
     */
    Object getSingleton(String beanName);

    /**
     * 添加一个单例bean
     * @param beanName
     * @param bean
     */
    void addSingleton(String beanName,Object bean);

    /**
     * 注册可销毁的bean
     * @param beanName
     * @param bean
     */
    void registerDisposableBean(String beanName, DisposableBean bean);
}
